/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Persistencia;

/**
 *
 * @author santiago
 */
public class SqlHelper {
    
    /**
     * Metodo que contiene la sentencia SQL para insertar un nuevo empleado en la base de datos
     * @return String
     */
    public static String insertarEmpleados() {
        return "INSERT INTO `empleados` (`nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono`) VALUES (?,?,?,?,?,?,?,?,?,?)";
    }
    /**
     * Metodo que contiene la sentencia SQL para consultar un empleado
     * @return String
     */
    public static String consultarEmpleados() {
        return "SELECT `nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono` FROM `empleados` WHERE numeroDocumento=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para modificar la informacionn de un empleado
     * @return String
     */
    public static String modificarEmpleados() {
        return "UPDATE `empleados` SET `nombres`=?, `primerApellido`=?, `segundoApellido`=?, `tipoDocumento`=?, `numeroDocumento`=?, `correo`=?, `clave`=?, `ciudad`=?, `direccion`=?, `telefono`=? WHERE numeroDocumento=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para eliminar un empleado
     * @param numeroDocumento Cedula del empleado
     * @return String
     */
    public static String eliminarEmpleados(String numeroDocumento) {
        return "DELETE FROM `empleados` WHERE numeroDocumento='"+numeroDocumento+"'";
    }
    /**
     * Metodo que contiene la sentencia SQL para listar empleados
     * @return String
     */
    public static String listarEmpleados() {
        return "SELECT `nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono` FROM `empleados`";
    }
    /**
     * Metodo que contiene la sentencia SQL para insertar un cliente en la base de datos
     * @return String
     */
    public static String insertarCliente() {
        return "INSERT INTO `clientes` (`nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono`) VALUES (?,?,?,?,?,?,?,?,?,?)";
    }
    /**
     * Metodo que contiene la sentencia SQL para consultar un cliente
     * @return String
     */
    public static String consultarCliente() {
        return "SELECT `nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono` FROM `clientes` WHERE numeroDocumento=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para modificar la informacion de un cliente
     * @return String
     */
    public static String modificarCliente() {
        return "UPDATE `clientes` SET `nombres`=?, `primerApellido`=?, `segundoApellido`=?, `tipoDocumento`=?, `numeroDocumento`=?, `correo`=?, `clave`=?, `ciudad`=?, `direccion`=?, `telefono`=? WHERE numeroDocumento=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para eliminar un cliente
     * @param numeroDocumento Cedula del cliente
     * @return String
     */
    public static String eliminarCliente(String numeroDocumento) {
        return "DELETE FROM `clientes` WHERE numeroDocumento='"+numeroDocumento+"'";
    }
    /**
     * Metodo que contiene la sentencia SQL para listar clientes
     * @return String
     */
    public static String listarCliente() {
        return "SELECT `nombres`, `primerApellido`, `segundoApellido`, `tipoDocumento`, `numeroDocumento`, `correo`, `clave`, `ciudad`, `direccion`, `telefono` FROM `clientes`";
    }
    /**
     * Metodo que contiene la sentencia SQL para insertar el registro del ingreso de un vehiculo en la base de datos
     * @return String
     */
    public static String insertarVehiculo() {
        return "INSERT INTO `vehiculo`(`numeroIngreso`, `fechaIngreso`, `documentoCliente`, `empleadoRecibe`, `placa`, `marca`, `serie`, `anho`, `kilometraje`, `descripcionNecesidad`,`estado`) \n"
                + "VALUES (?,?,?,?,?,?,?,?,?,?,?)";
    }
    /**
     * Metodo que contiene la sentencia SQL para consultar el ingreso vehiculo
     * @return String
     */
    public static String consultarVehiculo() {
        return "SELECT `numeroIngreso`, `fechaIngreso`, `documentoCliente`, `empleadoRecibe`, `placa`, `marca`, `serie`, `anho`, `kilometraje`, `descripcionNecesidad`,`estado` FROM `vehiculo`  WHERE numeroIngreso=? AND placa=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para listar los ingresos de los vehiculos registrados
     * @return String
     */
    public static String listarIngresoVehiculo(){
        return "SELECT `numeroIngreso`, `fechaIngreso`, `documentoCliente`, `empleadoRecibe`, `placa`, `marca`, `serie`, `anho`, `kilometraje`, `descripcionNecesidad` FROM `vehiculo`";
    }
    /**
     * Metodo que contiene la sentencia SQL para modificar el ingreso de un vehiculo
     * @return String
     */
    public static String modificarVehiculo() {
        return "UPDATE `vehiculo` SET `numeroIngreso`=?, `fechaIngreso`=?, `documentoCliente`=?, `empleadoRecibe`=?, `placa`=?, `marca`=?, `serie`=?, `anho`=?, `kilometraje`=?, `descripcionNecesidad`=?,`estado`=?  WHERE numeroIngreso=? AND placa=?";
    }
    /**
     * Metodo que contiene la sentencia SQL para eliminar el ingreso de un vehiculo
     * @param numeroIngreso Numero de ingreso del vehiculo
     * @return String
     */
    public static String eliminarVehiculo(int numeroIngreso) {
        return "DELETE FROM vehiculo WHERE numeroIngreso='"+numeroIngreso+"'";
    }
    /**
     * Metodo que contiene la sentencia SQL para consultar el estado de un vehiculo en el taller
     * @param numeroIngreso Numero de ingreso del vehiculo
     * @param placa Placa del vehiculo
     * @return String
     */
    public static String consultarEstadoVehiculo(int numeroIngreso, String placa){
        return "SELECT estado FROM vehiculo WHERE numeroIngreso='"+numeroIngreso+"' AND placa='"+placa+"'";
    }
}
